package com.xms.schema.api.model;

import com.xms.sdk.core.query.AttributeAggregateExpression;

import java.util.List;
import java.util.UUID;

/**
 * <p>
 * EditAttributeModel
 * </p>
 *
 * @author migo
 * @since 2021/9/16
 */
public class EditAttributeModel {
    public UUID AttributeId;

    public String Name;

    public String LocalizedName;

    public UUID EntityId;
    public String DefaultValue;
    public boolean IsRequired;
    public boolean LogEnabled;

    //int setting
    public Integer IntMinValue;
    public Integer IntMaxValue;

    //nvarchar setting
    public String TextFormat;
    public Integer MaxLength;

    //ntext setting
    public String NTextFormat;

    //float setting
    public Integer FloatPrecision;
    public Float FloatMinValue;
    public Float FloatMaxValue;

    //money setting
    public Integer MoneyPrecision;
    public Float MoneyMinValue;
    public Float MoneyMaxValue;

    //optionset setting
    public String OptionSetType;

    public List<String> OptionSetName;
    public List<Integer> OptionSetValue;
    public List<Boolean> IsSelectedOption;

    //bit setting
    public List<String> BitOptionName;


    //datetime setting
    public String DateTimeFormat;

    public String LookupType;

    //part list setting
    public String PartyListFormat;

    public com.xms.schema.entity.Entity Entity;

    public com.xms.schema.entity.Attribute Attribute;
    public boolean AuthorizationEnabled;

    public String Description;
    public String FormulaExpression;
    public int ValueType;
    public UUID SummaryEntityId;
    public String SummaryExpression;
    public AttributeAggregateExpression AaExp;
}
